﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
using SushiRESTServices.Dominio;
using SushiRESTServices.Persistencia;
using SushiRESTServices.Exceptions;
using System.Net;

namespace SushiRESTServices
{
    // NOTA: puede usar el comando "Rename" del menú "Refactorizar" para cambiar el nombre de clase "Service1" en el código, en svc y en el archivo de configuración.
    public class Personas : IPersonas
    {

        private PersonaDAO dao = new PersonaDAO();

        public Persona RegistrarPersona(Persona unidadACrear)
        {
            Persona unidad_valida = new Persona();
            unidad_valida = dao.obtenerPersonaPorDNI(unidadACrear.NumDocIden);

            if (unidad_valida != null)
            {
                throw new WebFaultException<PersonaException>(new PersonaException() { Message = "El D.N.I. " + unidadACrear.NumDocIden + " ya existe." }, HttpStatusCode.BadRequest);
            }

            return dao.CrearPersona(unidadACrear);
        }



        public int IdCorrelativo()
        {
            return dao.ObtenerIdCorrelativo();
        }
    }
}
